package com.wei.czz.framework.blog.service;

import com.wei.czz.common.dto.blog.SpaceDto;
import com.wei.czz.common.tool.PageDto;
import com.wei.czz.common.vo.blog.space.SpaceVo;
import com.wei.czz.common.vo.blog.space.SpaceFormVo;
import com.wei.czz.framework.blog.entity.SpaceEntity;

import java.util.List;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wei
 * date: 2021-03-15 10:29:48
 * className: SpaceService 用户博客空间操作请求服务接口
 * version: 1.0
 * description:
 */
public interface SpaceService {

    /**
     * 用户空间保存
     * @param space  空间表单对象
     */
    void saveSpace(SpaceVo space);

    /**
     * 获取用户空间操作
     * @param userId 用户主键
     * @return 用户空间列表
     */
    List<SpaceEntity> getSpaceList(Long userId);

    /**
     * 用户获取自己的空间列表
     * @param spaceVo 空间检索表单对象
     */
    PageDto<SpaceDto> getSpacePageList(SpaceFormVo spaceVo);

    /**
     * 根据空间id，获取空间信息
     * @param spaceId 空间id
     */
    SpaceDto getSpaceInfo(String spaceId);

    /**
     * 用户空间信息修改
     * @param spaceVo 空间信息对象
     */
    void updateSpace(SpaceVo spaceVo);

    /**
     * 用户空间信息删除
     * @param spaceIdList 空间id列表
     */
    void deleteSpace(List<Long> spaceIdList);

}

